package indi.h.snmp;

import java.util.ArrayList;
import java.util.List;

import org.snmp4j.PDU;
import org.snmp4j.mp.SnmpConstants;
import org.snmp4j.security.AuthMD5;
import org.snmp4j.security.PrivDES;
import org.snmp4j.security.UsmUser;
import org.snmp4j.smi.OID;
import org.snmp4j.smi.OctetString;

/**
 * snmp配置参数类
 * 
 * @author hdy
 *
 */
public class SnmpParam implements Cloneable {

	private int version = SnmpConstants.version2c;
	private UsmUser v3User = new UsmUser(new OctetString("MD5DES"), AuthMD5.ID,
			new OctetString("MD5DESUserAuthPassword"), PrivDES.ID, new OctetString("MD5DESUserPrivPassword"));
	private OctetString v3Code = new OctetString("MD5DES");

	private int timeOut = 1000;
	private int retries = 3;
	private OctetString community = new OctetString("public");

	private Integer pduType = PDU.GET;

	private boolean isSync = true;

	private OID[] oids;

	private Integer maxPduSize;

	private OID lowerItem;

	private OID upperItem;

	public int getVersion() {
		return version;
	}

	public void setVersion(int version) {
		this.version = version;
	}

	public UsmUser getV3User() {
		return v3User;
	}

	public void setV3User(UsmUser v3User) {
		this.v3User = v3User;
	}

	public OctetString getV3Code() {
		return v3Code;
	}

	public void setV3Code(OctetString v3Code) {
		this.v3Code = v3Code;
	}

	public int getTimeOut() {
		return timeOut;
	}

	public void setTimeOut(int timeOut) {
		this.timeOut = timeOut;
	}

	public int getRetries() {
		return retries;
	}

	public void setRetries(int retries) {
		this.retries = retries;
	}

	public OctetString getCommunity() {
		return community;
	}

	public void setCommunity(OctetString community) {
		this.community = community;
	}

	public Integer getPduType() {
		return pduType;
	}

	public void setPduType(Integer pduType) {
		this.pduType = pduType;
	}

	public boolean isSync() {
		return isSync;
	}

	public void setSync(boolean isSync) {
		this.isSync = isSync;
	}

	public OID[] getOids() {
		return oids;
	}

	public void setOids(OID[] oids) {
		this.oids = oids;
	}

	public Integer getMaxPduSize() {
		return maxPduSize;
	}

	public void setMaxPduSize(Integer maxPduSize) {
		this.maxPduSize = maxPduSize;
	}

	public OID getLowerItem() {
		return lowerItem;
	}

	public void setLowerItem(OID lowerItem) {
		this.lowerItem = lowerItem;
	}

	public OID getUpperItem() {
		return upperItem;
	}

	public void setUpperItem(OID upperItem) {
		this.upperItem = upperItem;
	}

	

}
